//#include <stdio.h>
//int main()
//{
//    int a,b;
//    scanf("%d%d",&a,&b);
//    if(a%b==0)
//    printf("YES");
//    else
//    printf("NO");
//    return 0;
//}
//#include <stdio.h>
//int main()
//{
//    int a;
//    scanf("%d",&a);
//    if(a%7==0&&a%2!=0)
//    printf("YES");
//    else
//    printf("NO");
//    return 0;
//}
//#include <stdio.h>
//int main()
//{
//    char a;
//    double m,n;
//    scanf("%c",&a);
//    scanf("%lf%lf",&m,&n);
//    if(a=='r')
//    printf("%.2lf",m*n);
//    if(a=='t')
//    printf("%.2lf",m*n/2);
//    return 0;
//}
//#include <stdio.h>
//int main()
//{
//    
//	char b;
//    scanf("%c",&b);
//    switch((int)b)
//    {
//    case 104:printf("He");break;
//    case 108:printf("Li");break;
//    case 99:printf("Cao");break;
//    case 100:printf("Duan");break;
//    case 119:printf("Wang");break;\
//	default:printf("Not Here");
//}
//    return 0;
//}

//#include <stdio.h>
//int main()
//{
//	int a;
//	scanf("%d",&a);
//	int n;
//	if(a>=1900)
//	{
//		n=a-1899;
//		n=n%12;
//		switch(n){
//		case 1:printf("rat");break;
//		case 2:printf("ox");break;
//		case 3:printf("tiger");break;
//		case 4:printf("rabbit");break;
//		case 5:printf("dragon");break;
//		case 6:printf("snake");break;
//        case 7:printf("horse");break;
//		case 8:printf("sheep");break;
//		case 9:printf("monkey");break;
//		case 0:
//		case 10:printf("rooster");break;
//		case 11:printf("dog");break;
//		case 12:printf("pig");break;
//		}
//	}
//	else{
//		n=1900-a;
//		n=n%12;
//	switch(n){
//			case 12:printf("rat");break;
//			case 11:printf("ox");break;
//			case 10:printf("tiger");break;
//			case 9:printf("rabbit");break;
//			case 8:printf("dragon");break;
//			case 7:printf("snake");break;
//			case 6:printf("horse");break;
//			case 5:printf("sheep");break;
//			case 4:printf("monkey");break;
//			case 3:printf("rooster");break;
//			case 2:printf("dog");break;
//			case 1:printf("pig");break;
//		}
//	}
//	return 0;
//}

#include <stdio.h>
int main()
{
	int a,b,c;
	scanf("%d%d%d",&a,&b,&c);
	int flag;
	if(a%400==0||(a%4==0&&a%100!=0))
		flag=1;
	else
		flag=0;
	if(flag==0)
	{
		if(b==1||b==3||b==5||b==7||b==8||b==10||b==12)
			if(c<=31)
			{
				printf("YES");
		        goto End;
			}
		if(b==4||b==6||b==9||b==11)
			if(c<=30)
			{
				printf("YES");
				goto End;
			}
		if(b==2)
			if(c<=28)
			{
				printf("YES");
				goto End;
			}
	}
		
	if(flag==1)
	{
		if(b==1||b==3||b==5||b==7||b==8||b==10||b==12)
			if(c<=31)
			{
				printf("YES");
				goto End;
			}
		if(b==4||b==6||b==9||b==11)
			if(c<=30)
			{
				printf("YES");
				goto End;
			}
		if(b==2)
			if(c<=29)
			{
				printf("YES");
				goto End;
			}
	}
	printf("NO");
	
		End:
	return 0;
}
